home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / redakcyjne / programy / MediaMonkey 3.1.0.1256 / MediaMonkey_3.1.0.1256.exe / {app} / Scripts / ExportOPML.vbs < prev    next >
Text File  |  2009-03-04  |  2KB  |  76 lines

  1. ' !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  2. ' This file can be replaced  in one of the future versions,
  3. ' so please if you want to modify it, make  a copy, do your
  4. ' modifications  in that copy and  change Scripts.ini  file 
  5. ' appropriately. 
  6. ' If you do not do this, you will lose all  your changes in
  7. ' this script when you install a new version of MediaMonkey
  8. ' !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  9.  
  10. Option Explicit     ' report undefined variables, ...
  11.  
  12. ' SDB variable is connected to MediaMonkey application object
  13.  
  14. Sub ExportOPML
  15.   ' Open inifile and get last used directory
  16.   Dim iniF
  17.   Set iniF = SDB.IniFile
  18.  
  19.   ' Let user select the output path
  20.   Dim path
  21.   path = iniF.StringValue( "Scripts", "LastExportOPMLDir")
  22.  
  23.   path = SDB.SelectFolder( path, SDB.Localize( "Select where to export the OPML file."))
  24.  
  25.   If path="" Then
  26.     Exit Sub
  27.   End If
  28.  
  29.   If Right( path, 1)<>"\" Then
  30.     path = path & "\"
  31.   End If
  32.  
  33.   ' Write selected directory to the ini file
  34.   iniF.StringValue( "Scripts", "LastExportOPMLDir") = path
  35.   Set iniF = Nothing
  36.  
  37.   ' Connect to the FileSystemObject
  38.   Dim fso
  39.   Set fso = SDB.Tools.FileSystem
  40.  
  41.   ' Use progress to notify user about the current action
  42.   Dim Progress, ExpText
  43.   Set Progress = SDB.Progress
  44.   ExpText = SDB.Localize("Exporting...")
  45.   Progress.Text = ExpText
  46.  
  47.   Dim fout, title
  48.   title = "My podcasts"
  49.  
  50.   ' Create the OPML file for export
  51.   Set fout = fso.CreateTextFile( path & fso.CorrectFilename( title) & ".opml", True)
  52.   fout.WriteLine "<opml version=""1.0"">"
  53.   fout.WriteLine "<head>"
  54.   fout.WriteLine "<title>" & title & "</title>"
  55.   fout.WriteLine "</head>" 
  56.   fout.WriteLine "<body>" 
  57.  
  58.   ' Write all subscribed podcasts to the OPML file   
  59.   Dim strSQL, qrySQL, outline, i
  60.   strSQL = "SELECT PodcastName, PodcastURL FROM Podcasts ORDER BY PodcastName"
  61.   Set qrySQL = SDB.Database.OpenSQL( strSQL)
  62.   While Not qrySQL.EOF
  63.     if ( qrySQL.StringByName("PodcastURL") <> "") then ' We want only subscribed podcasts
  64.       i = i + 1
  65.       outline = "<outline id = """ & i & """ text=""" & qrySQL.StringByName("PodcastName") & """"
  66.       outline = outline & " type=""rss"" xmlUrl=""" & qrySQL.StringByName("PodcastURL") & """ />"
  67.       fout.WriteLine outline
  68.     end if    
  69.     qrySQL.Next
  70.   Wend
  71.  
  72.   fout.WriteLine "</body>" 
  73.   fout.WriteLine "</opml>" 
  74.   fout.Close
  75. End Sub
  76.